<?php

namespace app\index\controller;

use think\Controller;

/**
 * 购物车管理
 * Class Cart
 * @package app\index\controller
 */
class Cart extends Controller
{

	/**
	 * 购物车首页
	 */
	public function index()
	{
		//检测用户是否登陆
		if(!session('user.uname')){
			$this->success('您还有登陆哦 ^_^',url('index/login/login'));
		}else{
			$data = session('cart');
//			halt($data);
			return view('',compact('data'));
		}

	}
	/**
	 *添加购物车
	 */
	public function addCart ()
	{

		if(request()->isAjax()){
			$post = input('post.');//接受所有post数据
			$post['options'] = explode('|',rtrim($post['options'],'|'));
//			halt($post);
			$data = [
				'id'      => $post['gid'] , // 商品 ID
				'name'    => $post['gname'] ,// 商品名称
				'num'     => $post['num'] , // 商品数量
				'price'   => $post['price'] , // 商品价格
				'options' => [
					'color' => $post['options'][0],
					'size'  => $post['options'][1],
					'img'=>$post['img'],
				]// 其他参数如价格、颜色、可以为数组或字符串
			];
			\houdunwang\cart\Cart::add( $data ); // 添加到购物车
//			halt(session('cart'));
			echo 1;
		}
	}
	/**
	 * 更新购物车
	 */
	public function updateCart()
	{
//		halt(input('post.'));
//		$data=array(
//			'sid'=>'4d854bc6',// 唯一 sid，添加购物车时自动生成
//			'num'=>88
//		);
		\houdunwang\cart\Cart::update(input('post.'));
	}

	/**
	 * 删除
	 */
	public function delCart()
	{
		$sid = input('post.sid');
		//halt($sid);
		$data = session('cart');//这是购物车数据
		//halt($data['goods'][$sid]);
		//删除$data数据
		unset($data['goods'][$sid]);
		//删除之后会导致total_rows和total_price不正确
		$data['total_rows'] = 0;
		$data['total_price'] = 0;
		foreach ($data['goods'] as $k=>$v){
			$data['total_rows'] += $v['num'];
			$data['total_price'] += $v['total'];
		}
		//重新赋值回session
		session('cart',$data);
	}
}
